package collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;

/**
 * 集合操作
 */
public class CollectionDemo3 {
    public static void main(String[] args) {
        Collection c1 = new ArrayList();
        c1.add("java");
        c1.add("c++");
        c1.add(".net");
        System.out.println("c1:"+c1);

        Collection c2 = new HashSet();
        c2.add("android");
        c2.add("ios");
        c2.add("java");
        System.out.println("c2:"+c2);
        /*
            boolean addAll(Collection c)
            并集操作，将给定集合中的所有元素添加到当前集合中，添加后当前集合发生改变则返回true
         */
        c1.addAll(c2);
//        c2.addAll(c1);//不可重复集，c1中重复元素不会被添加
        System.out.println("c1:"+c1);
        System.out.println("c2:"+c2);

        /*
            boolean containsAll(Collection c)
            判断当前集合是否包含给定集合中的所有元素
         */
        Collection c3 = new ArrayList();
        c3.add("c++");
        c3.add("android");
        c3.add("php");
        System.out.println("c3:"+c3);
        //判断c1是否包含c3的所有元素
        boolean containsAll = c1.containsAll(c3);
        System.out.println("包含所有:"+containsAll);
        /*
            removeAll:删除交集
            将当前集合中与给定集合的共有元素删除
         */
//        c1.removeAll(c3);
//        System.out.println("c1:"+c1);
//        System.out.println("c3:"+c3);
        /*
            retainAll():取交集
            保留当前集合中与给定集合的共有元素
         */
        c1.retainAll(c3);
        System.out.println("c1:" + c1);
        System.out.println("c3:" + c3);


    }
}





